package com.csun.cmny.provider.model.vo.longRangeServiceOrder;

import com.csun.cmny.provider.model.domain.OmcSuperviseLongRangeService;
import com.csun.cmny.provider.model.domain.OmcVideoLongRangeService;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class LongRangeServiceOrderVo {

    private Long id;

    private String orderNo;

    /*专家id*/
    private Long specialistId;

    /*老人id*/
    private Long olamanId;

    /*订单类型 0-咨询订单 1-远程看护订单*/
    private Integer orderType;

    /*0-已下单 1-咨询待回复 2-咨询已回复 3-远程视频订单待确认 4-远程视频订单时效中 5-远程视频订单已过期  6-远程视频订单次数完成*/
    private Integer orderStatus;

    /*支付状态 0-订单未支付 1-订单已支付*/
    private Integer isPayed;

    /*是否评论 0-未评论 1-已评论*/
    private Integer isComments;

    /*投诉状态 0-无投诉 1-待处理 2-已处理*/
    private Integer complaintStatus;

    /*订单确认时间*/
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date enretTime;

    /*订单截至时间*/
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date overTime;

    /*订单总价*/
    private BigDecimal total;

    /*数量*/
    private Integer numbers;

    /*备注*/
    private String remark;

    /*录入人*/
    private String operator;

    /*机构id*/
    @Column(name = "group_id")
    private Long groupId;

    /*下单人id*/
    private Long userId;

    /*创建时间*/
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createdTime;

    /*批注集合*/
    private List<LongRangeServiceOrderCommentVo> commentVos;

    /*专家名字*/
    private String specialistName;

    /*视频订单剩余有效天数*/
    private Integer validDays = 0;

    /*专家是否在线 是否上线 0-上线 1-下线*/
    private Integer isPutaway;

    /*服务地址*/
    private String serviceAddress;

    /*视频通话当月剩余次数*/
    private Integer residueNumber;

    /*老人姓名*/
    private String oldName;

    /*商品id*/
    private Long merchandiseId;

    /*商品名称*/
    private String merchandiseName;

    /*单次咨询专家提成*/
    private BigDecimal consultRoyalty;

    /*视频通话包月专家提成*/
    private BigDecimal videoRoyalty;

    /*专家提成金额*/
    private BigDecimal royalties;

    /*视频服务集合*/
    private List<OmcVideoLongRangeService> videoServices;

    /*远程监测服务集合*/
    private List<OmcSuperviseLongRangeService> superviseServises;

    /*远程视频订单专家总视频次数*/
    private Integer numberMonthly;
}
